package Service.StatisticalReport;

import Model.StatisticalReport.ReportStatisticsQuery;
import utils.pages.PageBean;

import java.util.List;
import java.util.Map;

public interface ReportStatisticsService {

    PageBean<Map<String, Object>> selectNum(ReportStatisticsQuery query);
    PageBean<Map<String, Object>> selectTimes(ReportStatisticsQuery query);
    PageBean<Map<String, Object>> selectExpense(ReportStatisticsQuery query);
    PageBean<Map<String, Object>> selectPayment(ReportStatisticsQuery query);

    /**
     * 统计结算人数
     * @param query @必选[年份, 类型]，可选[机构名字]
     * @return
     */
    PageBean<Map<String, Object>> selectSettlement(ReportStatisticsQuery query);

    /**
     * 汇总表-统计所有费用
     * @param query
     * @return
     */
    List<Map<String, Object>> selectTotalExpense(ReportStatisticsQuery query);

    /**
     * 月报
     * @param query
     * @return
     */
    List<Map<String, Object>> selectMonthly(ReportStatisticsQuery query);
}
